 <template>
  <div>
<!-- 用于展开或收缩菜单栏
    <el-radio-group v-model="isCollapse" 
    style="margin-bottom: 20px;">
      <el-radio-button :label="false">展开</el-radio-button>
      <el-radio-button :label="true">收起</el-radio-button>
    </el-radio-group> -->
    <el-menu default-active="1-4-1" 
        background-color="#ececec"
        class="el-menu-vertical-demo" @open="handleOpen" @close="handleClose" :collapse="isCollapse">
      <el-submenu index="1" class="item-row">
        <template slot="title">
          <i class="el-icon-location"></i>
          <span slot="title">导航一</span>
        </template>

        <el-menu-item-group>
          <span slot="title">分组一</span>
          <el-menu-item @click="openTab('/home')" class="item-li" index="1-1">选项1</el-menu-item>
          <el-menu-item class="item-li" @click="openTab('/homeA')" index="1-2">选项2</el-menu-item>
        </el-menu-item-group>

        <el-menu-item-group title="分组2">
          <el-menu-item @click="openTab('/homeB')" class="item-li" index="1-3">选项3</el-menu-item>
        </el-menu-item-group>

        <el-submenu index="1-4">
          <span slot="title">选项4</span>
          <el-menu-item @click="openTab('/homeC')" class="item-li" index="1-4-1">选项1</el-menu-item>
        </el-submenu>
      </el-submenu>

      <el-submenu index="2" class="item-row">
        <template slot="title">
          <i class="el-icon-menu"></i>
          <span slot="title">导航二</span>
        </template>
        <el-menu-item-group>
          <el-menu-item class="item-li" index="2-1">
            <span slot="title">导航二</span>
          </el-menu-item>
        </el-menu-item-group>
      </el-submenu>
    </el-menu>
  </div>
</template>

<script>
  import {mapState, mapActions} from 'vuex';

  export default {
    data() {
      return {
        tabIndex: 2,
        isCollapse: false
      };
    },
    methods: {
      handleOpen(key, keyPath) {
        console.log(key, keyPath);
      },
      handleClose(key, keyPath) {
        console.log(key, keyPath);
      },
      ...mapActions(['openTab'])
      // openTab(){
      //   let newTabName = ++this.tabIndex + '';
      //   this.$store.editableTabs.push({
      //     title: 'New Tab',
      //     name: newTabName,
      //     content: 'New Tab content'
      //   });
      //   this.$store.editableTabsValue = newTabName;
      // }
    }
  }
</script>

<style>
  .el-menu-vertical-demo:not(.el-menu--collapse) {
    width: 200px;
    min-height: 400px;
  }
  .item-li {
    width: 200px;
  }
  .item-row {
    width: 240px;
  }
</style>
